package com.team.bootmq.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;

import java.time.LocalDateTime;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author xd
 * @since 2024-04-25
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class OceanFreightRate implements Serializable {

    private static final long serialVersionUID=1L;

    @TableId(value = "nid", type = IdType.ASSIGN_ID)
    private Long nid;

    private String id;

    /**
     * 起始港口名称
     */
    private String originPortName;

    /**
     * 目的港口名称
     */
    private String destinationPortName;

    /**
     * 起始港口代码
     */
    private String originPortCode;

    /**
     * 目的港口代码
     */
    private String destPortCode;

    /**
     * 日期
     */
    private Date date;

    /**
     * LanID
     */
    private String lanId;

    /**
     * 备注
     */
    private String comment;

    /**
     * 设备尺寸
     */
    private String equipmentSize;

    /**
     * 设备类型
     */
    private String equipmentType;

    /**
     * 基础海洋运费率
     */
    private BigDecimal baseOceanFreightRate;

    /**
     * 燃油附加费
     */
    private BigDecimal baf;

    /**
     * 是否包含在基本费率中
     */
    private String isBafIncludedInBaseRate;

    /**
     * 是否包含在基本费率中
     */
    private String isOthcIncludedInBaseRate;

    /**
     * 不包含在基本费率中时的其他费用
     */
    private BigDecimal othcWhenNotInclInBaseRate;

    /**
     * 其他费用
     */
    private BigDecimal othc;

    /**
     * 是否包含在基本费率中
     */
    private String isDthcIncludedInBaseRate;

    /**
     * 不包含在基本费率中时的目的地清关费
     */
    private BigDecimal dthcWhenNotIncldedInBaseRate;

    /**
     * 目的地清关费
     */
    private BigDecimal dthc;

    /**
     * 是否支付PSS
     */
    private String doYouPayPss;

    /**
     * 是否包含在基本费率中
     */
    private String isPssIncludedInBaseRate;

    /**
     * PSS费用
     */
    private BigDecimal pssCharges;

    /**
     * 是否支付LSS
     */
    private String doYouPayLss;

    /**
     * 是否包含在燃油附加费或基本费率中
     */
    private String isLssIncludedInBafOrBaseRate;

    /**
     * LSS附加费
     */
    private BigDecimal lssSurcharges;

    /**
     * 总费率
     */
    private BigDecimal totalAllInRate;

    /**
     * 承运人或货运代理商名称
     */
    private String carrierOrFreightForwarderName;

    /**
     * 承运人SCAC代码
     */
    private String carrierScacCode;

    private LocalDateTime validFromDate;

    private LocalDateTime validToDate;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createdTime;

    /**
     * 更新时间
     */
    private LocalDateTime lastUpdateTime;

    /**
     * 航线类型: 0 FORTN INPUT,1 MONTHLY INPUT
     */
    private Integer dataType;

    /**
     * 创建者的用户ID
     */
    private String createdUserId;

    /**
     * 创建者的用户名
     */
    private String createdUserName;

    /**
     * 最后更新者的用户ID
     */
    private String lastUpdateUserId;

    /**
     * 最后更新者的用户名
     */
    private String lastUpdateUserName;

    /**
     * 序号
     */
    private Integer number;


}
